﻿#pragma once


#include "MaterialGraph/Node/MaterialGraphNodeViewModel.h"
#include "MaterialCameraNodeViewModel.m.h"

class RMaterialGraphNodeModel;
class RMaterialCameraNodeModel;
class RMaterialGraphPinViewModel;

RCLASS()
class RMaterialCameraNodeViewModel : public RMaterialGraphNodeViewModel
{
    ROBJECT
    
public:
    virtual void BindModel(
        TSharedObjectPtr<RMaterialGraphNodeModel> InModel
        , TSharedObjectPtr<RMaterialGraphViewModel> InGraph
        )  override;

    virtual float GetNodeWidth() const  override{ return 200.0f; }
    virtual int64_t GetLineNum() const override;
    virtual CString GetName() const override { return U"相机属性"; };

    virtual CString GetOutputPinName(int64_t Index) const;
protected:
    TWeakObjectPtr<RMaterialCameraNodeModel> CameraModel;
};